QuickTime 3 Reference

QTAtomContainer-Based Data Structure Descriptions

QTAtomContainer-based data structures are being widely used in QuickTime. This appendix is an attempt at standardizing how the format of these data structure may be described and is documented. The key presented here is used in the QuickTime 3.0 tween documentation in the QuickTime 3 Reference.

QTAtomContainer Description Key

[(QTAtomFormatName)] =
    atomType_1, id, index
        data
    atomType_n, id, index
        data

The atoms may be required or optional:

<atomType>optional atom
atomTyperequired atom

The atom ID may be a number if it is required to be a constant, or may be a list of valid atom IDs, indicating that multiple atoms of this type are allowed.

3               one atom with id of 3
(1..3)          three atoms with ids of 1, 2, and 3
(1, 5, 7)       three atoms with ids of 1, 5, and 7
(anyUniqueIDs)  multiple atoms each with a unique id

The atom index may be a 1 if only one atom of this type is allowed, or it may be a range from one to some constant or variable.

1               one atom of this type is allowed, index is always 1
(1..3)          three atoms with indicies 1, 2, and 3
(1..numAtoms)   numAtoms atoms with indicies of 1 to numAtoms

The data may be leaf data in which its data type is listed inside of brackets [], or may be a nested tree of atoms

[theDataType]   leaf data of type theDataType
childAtomsa      nested tree of atoms

Nested QT atom format definitions [( AtomFormatName )] may appear in a definition.


© 1998 Apple Computer, Inc.